物件簡單來說是值與屬性的配對,屬性也可以是另一個物件。
之前有稍微提過建立物件有兩種方法:
1.用new的方式建構物件,它是根據Class(類)建構物件,這個部分之後會更詳細說明。
EX:
var person=new Object();
person.name='Ivy';
2.用物件實體語法(Object literal),就是按照字面的方式來建構物件。
建構的方式很方便,用左右大括號即可建構一個空物件
EX:
var person={name:'Ivy'};
這上面兩個範例結果是一樣的
物件實體語法同層級的屬性間用逗號區隔。
EX:
var person={
name : ['Ivy', 'Huang'],
age : 20,
gender : 'Female',
interests : ['reading', 'jogging'],
bio : function() {
alert(this.name[0] + ' ' + this.name[1] + ' is ' + this.age + ' years old. He likes ' + this.interests[0] + ' and ' + this.interests[1] + '.');
},
greeting: {
greet: 'Hello!',
},
}
就像上面,物件裡面還可以有物件,也可以在物件裡面建立方法。
我們可以用兩種方式取用物件的屬性:
物件名稱.屬性名稱
EX:
person.age
person.name.firstName
物件名稱["屬性名稱"]
EX:
person["age"]
person["name"]["firstName"]
除了取用屬性,我們還可以新增、修改、刪除屬性
EX:
var person={};
person.name='Ivy'; //建立了name的屬性 值為Ivy
參考文章
MDN JavaScript 物件基礎概念
海豹人的第一個家 克服 JavaScript 的奇怪部分 #5 物件實體語法 (Object Literal Syntax)